home *** CD-ROM | disk | FTP | other *** search
- on LocalStartMovie
- global gWasAt, gComingFrom, gGoingTo, gClock, gClockLong, gPastLoc, gCurrentLoc, gLevels, mywindow
- inivisiblizeHilites()
- if voidp(gClock) then
- LoadAllGlobals()
- end if
- CheckLocation()
- go(chars(gWasAt, 1, 2))
- updateStage()
- BlinkPrevious()
- SpinToCurrent()
- BlinkCurrent()
- end
-
- on CheckLocation
- global gWasAt, gComingFrom, gGoingTo, gClock, gClockLong, gPastLoc, gCurrentLoc, gLevels
- set ThirdChar to 0
- repeat with i = 1 to 12
- if chars(gWasAt, 1, 2) = item i of gClock then
- set gWasAtLong to item i of gClockLong
- set ThirdChar to char 3 of gWasAt
- if ThirdChar > 0 then
- set gPastLoc to item (ThirdChar * 12) + i - 12 of gLevels
- else
- set gPastLoc to "Home"
- end if
- exit repeat
- end if
- end repeat
- repeat with i = 1 to 12
- if chars(gComingFrom, 1, 2) = item i of gClock then
- set gComingFromLong to item i of gClockLong
- set ThirdChar to char 3 of gComingFrom
- if ThirdChar > 0 then
- set gCurrentLoc to item (ThirdChar * 12) + i - 12 of gLevels
- else
- set gCurrentLoc to "Home"
- end if
- exit repeat
- end if
- end repeat
- end
-
- on BlinkPrevious
- global gWasAt, gComingFrom, gGoingTo, gClock, gClockLong, gPastLoc, gCurrentLoc, gLevels
- set the visible of sprite (char 3 of gWasAt + 38) to 1
- repeat with count = 1 to 8
- set the foreColor of sprite 37 to 6
- updateStage()
- MyDelay(1)
- set the foreColor of sprite 37 to 255
- updateStage()
- MyDelay(1)
- end repeat
- set the visible of sprite (char 3 of gWasAt + 38) to 0
- end
-
- on SpinToCurrent
- global gWasAt, gComingFrom, gGoingTo, gClock, gClockLong, gPastLoc, gCurrentLoc, gLevels
- inivisiblizeHilites()
- puppetSound("WindMill")
- updateStage()
- set holder to chars(gComingFrom, 1, 2)
- set test to 0
- repeat while test = 0
- go(the frame + 1)
- if the frame = 37 then
- go("AG")
- end if
- if the frameLabel = holder then
- set test to 1
- end if
- end repeat
- end
-
- on BlinkCurrent
- global gWasAt, gComingFrom, gGoingTo, gClock, gClockLong, gPastLoc, gCurrentLoc, gLevels, gOffset
- set the visible of sprite (char 3 of gComingFrom + 38) to 1
- set CurrentHilite to the castNum of sprite (char 3 of gComingFrom + 38)
- set TheyWereHere to the castNum of sprite 13
- set ThisWasAtTop to the castNum of sprite 37
- puppetSound(0)
- CheckOffset()
- repeat with i = 1 to 8
- set the foreColor of sprite 37 to 6
- updateStage()
- MyDelay(1)
- set the foreColor of sprite 37 to 255
- updateStage()
- MyDelay(1)
- end repeat
- duplicate(cast TheyWereHere, 133)
- duplicate(cast ThisWasAtTop, 134)
- if rollOver(43) then
- go("RH")
- end if
- if rollOver(44) then
- go("LH")
- end if
- end
-
- on spinToNext
- global gWasAt, gComingFrom, gGoingTo, gClock, gClockLong, gPastLoc, gCurrentLoc, gLevels
- puppetSound("WindMill")
- updateStage()
- set test to 0
- set holder to chars(gGoingTo, 1, 2)
- go(chars(gComingFrom, 1, 2))
- if the frameLabel <> holder then
- repeat while test = 0
- go(the frame + 1)
- if the frame = 37 then
- go("AG")
- end if
- if the frameLabel = holder then
- set test to 1
- end if
- end repeat
- end if
- puppetSound(0)
- BlinkNext()
- set FraNam to gGoingTo & "01"
- if ((chars(FraNam, 1, 2) = "AG") or (chars(FraNam, 1, 2) = "BW")) and (integer(char 3 of FraNam) > 0) then
- if chars(gGoingTo, 1, 2) = "AG" then
- set FraNam to "AG30" & char 3 of gGoingTo
- set gGoingTo to "AG" & char 3 of gGoingTo
- else
- if chars(gGoingTo, 1, 2) = "BW" then
- set FraNam to "BW3" & zeroPad((integer(char 3 of gGoingTo) * 6) - 5)
- set gGoingTo to "BW" & integer(char 3 of gGoingTo)
- end if
- end if
- end if
- set gWasAt to gComingFrom
- set gComingFrom to gGoingTo
- go(FraNam, chars(gGoingTo, 1, 2))
- end
-
- on BlinkNext
- global gWasAt, gComingFrom, gGoingTo, gClock, gClockLong, gPastLoc, gCurrentLoc, gLevels, gOffset
- set the visible of sprite (char 3 of gGoingTo + 38) to 1
- set CurrentHilite to the castNum of sprite (char 3 of gGoingTo + 38)
- repeat with i = 1 to 8
- set the foreColor of sprite 37 to 6
- updateStage()
- MyDelay(1)
- set the foreColor of sprite 37 to 255
- updateStage()
- MyDelay(1)
- end repeat
- end
-
- on inivisiblizeHilites
- repeat with i = 38 to 42
- set the visible of sprite i to 0
- end repeat
- end
-
- on CheckOffset
- global gWasAt, gComingFrom, gGoingTo, gClock, gClockLong, gPastLoc, gCurrentLoc, gLevels, gOffset
- set GottaClick to the frameLabel
- repeat with i = 1 to 12
- if GottaClick = item i of gClock then
- set gOffset to i
- exit repeat
- end if
- end repeat
- end
-
- on theOffSetThing
- global gGoingTo, gOffset, gClock
- set Chars1and2 to chars(the name of cast the castNum of sprite the clickOn, 1, 2)
- set ThirdChar to char 3 of the name of cast the castNum of sprite the clickOn
- repeat with i = 1 to 12
- if Chars1and2 = item i of gClock then
- set SecondOffset to i
- end if
- end repeat
- set TotalOffset to gOffset + SecondOffset
- if TotalOffset = 13 then
- set TotalOffset to 12
- else
- set TotalOffset to abs((gOffset + SecondOffset + 11) mod 12)
- end if
- set gGoingTo to item TotalOffset of gClock & ThirdChar
- inivisiblizeHilites()
- puppetSprite(36, 0)
- puppetSprite(37, 0)
- spinToNext()
- end
-